// 同时发送异步代码的次数
let ajaxTimes=0;

// 定义公共部分的url
// url: "https://api-hmugo-web.itheima.net/api/public/v1/categories"
export const request=(params)=>{
  // 判断 url中是否带有 /my/ 若是 请求的是私有的路径 需要带上header token
  // header = {...params.header}; 为避免写死无法添加其他请求头参数，{...params.header}
  let header = {...params.header};
  if(params.url.includes("/my/")){
    //  拼接header 带上token
    header["Authorization"] = wx.getStorageSync("token");
  }

  ajaxTimes++;
  // 显示 加载中 效果
  wx.showLoading({
    title: "加载中",
    mask: true
  });

  // 定义公共的url
  const baseUrl = "https://api-hmugo-web.itheima.net/api/public/v1"
  return new Promise((resolve,reject)=>{
    wx.request({
      ...params,
      header:header,
      url:baseUrl+params.url,
      success:(result)=>{
        resolve(result.data.message);
      },
      fail:(err)=>{
        reject(err);
      },
      complete:()=>{
        // complate不管成功还是失败都会执行
        ajaxTimes--;
        if(ajaxTimes===0){
          /*
            如果同时有好几个异步请求，要等所有的请求完成后再关闭等待图标
          */
          // 关闭正在等待的图标
          wx.hideLoading();
          // setTimeout(function () {
          //   wx.hideLoading()
          // }, 100)
        }
      }
    });
  })
}